<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
<script>

    //需求：输入某年某月某日，判断这一天是这一年的第几天？（闰年）
        //（四年一闰，百年不闰，四百年在闰）
    //步骤：
    //1.判断是否是闰年。
    //2.求天数。(年判断是否是闰年，月是否超过2月，天最好做)
        //1.把每月的天数组成一个数组，不包含闰年。
        //2.如果是闰年，而且超过了二月，直接在天数上+1；


    //2.求天数。(年判断是否是闰年，月是否超过2月，天最好做)
        //1.把每月的天数组成一个数组，不包含闰年。
        //2.如果是闰年，而且超过了二月，直接在天数上+1；

    console.log(getDays(2015,3,1));
//    console.log(getDays(2015,5,67));

    //参数问题：年月日是变化的。处理方法有两种，第一种就是变成成员变量，不方便。
                                         //第二种是把年月日变成参数。
    function getDays(year,month,day){
        //1.把每月的天数组成一个数组，不包含闰年。
        var arr = [31,28,31,30,31,30,31,31,30,31,30,31];
        //2.如果是闰年，而且超过了二月，直接在天数上+1；
        //把输入的月份之前的天数放入到day中。（不包含本月）
        //输入的月份我们把他当做索引值用。（所以我们要把月份-1，而且不能相等）
        for(var i=0;i<month-1;i++){
            //把月份之前的所有天数放入到day中
//            day = day + arr[i];
            day += arr[i];
        }
        //判断是否是闰年且月份是否超过2月。不能等于二月。如果超过day+1;
        if(month>2 && isRN(year)){
           //day++;
            day+=1;
        }
        //算好的天数，返回，外部使用
        return day;
    }


    //1.判断是否是闰年。
    function isRN(year){
        //要有返回值，将来判断是否是闰年，是否超过2月，如果是添加1天。
        //（四年一闰，百年不闰，四百年在闰） 4  8 64  24  36行  100/200/300不行    400、800、1200行
//        if(year%4===0 && year%100!==0 || year%400===0){
//            return true;
//        }else{
//            return false;
//        }
        if(year%4===0 && year%100!==0 || year%400===0){
            return true;
        }
        return false;
    }



</script>
</body>
</html>